<?xml version="1.0" encoding="utf-8"?>
<xs:schema xmlns:tns="http://tempuri.org/" elementFormDefault="qualified" targetNamespace="http://tempuri.org/" xmlns:xs="http://www.w3.org/2001/XMLSchema">
  <xs:import schemaLocation="http://localhost:26753/ProductServices.svc?xsd=xsd2" namespace="http://schemas.datacontract.org/2004/07/Common" />
  <xs:import schemaLocation="http://localhost:26753/ProductServices.svc?xsd=xsd5" namespace="http://schemas.datacontract.org/2004/07/Common.VIews" />
  <xs:import schemaLocation="http://localhost:26753/ProductServices.svc?xsd=xsd6" namespace="http://schemas.datacontract.org/2004/07/Common.Views" />
  <xs:import schemaLocation="http://localhost:26753/ProductServices.svc?xsd=xsd1" namespace="http://schemas.microsoft.com/2003/10/Serialization/" />
  <xs:element name="GetAllProducts">
    <xs:complexType>
      <xs:sequence />
    </xs:complexType>
  </xs:element>
  <xs:element name="GetAllProductsResponse">
    <xs:complexType>
      <xs:sequence>
        <xs:element xmlns:q1="http://schemas.datacontract.org/2004/07/Common" minOccurs="0" name="GetAllProductsResult" nillable="true" type="q1:ArrayOfProduct" />
      </xs:sequence>
    </xs:complexType>
  </xs:element>
  <xs:element name="Search">
    <xs:complexType>
      <xs:sequence>
        <xs:element minOccurs="0" name="category" type="xs:int" />
        <xs:element minOccurs="0" name="name" nillable="true" type="xs:string" />
        <xs:element minOccurs="0" name="LeastPrice" type="xs:int" />
        <xs:element minOccurs="0" name="MaxPrice" type="xs:int" />
      </xs:sequence>
    </xs:complexType>
  </xs:element>
  <xs:element name="SearchResponse">
    <xs:complexType>
      <xs:sequence>
        <xs:element xmlns:q2="http://schemas.datacontract.org/2004/07/Common" minOccurs="0" name="SearchResult" nillable="true" type="q2:ArrayOfProduct" />
      </xs:sequence>
    </xs:complexType>
  </xs:element>
  <xs:element name="UpdateProduct">
    <xs:complexType>
      <xs:sequence>
        <xs:element xmlns:q3="http://schemas.datacontract.org/2004/07/Common" minOccurs="0" name="p" nillable="true" type="q3:Product" />
      </xs:sequence>
    </xs:complexType>
  </xs:element>
  <xs:element name="UpdateProductResponse">
    <xs:complexType>
      <xs:sequence />
    </xs:complexType>
  </xs:element>
  <xs:element name="GetProductByID">
    <xs:complexType>
      <xs:sequence>
        <xs:element minOccurs="0" name="id" type="xs:int" />
      </xs:sequence>
    </xs:complexType>
  </xs:element>
  <xs:element name="GetProductByIDResponse">
    <xs:complexType>
      <xs:sequence>
        <xs:element xmlns:q4="http://schemas.datacontract.org/2004/07/Common" minOccurs="0" name="GetProductByIDResult" nillable="true" type="q4:Product" />
      </xs:sequence>
    </xs:complexType>
  </xs:element>
  <xs:element name="AddRating">
    <xs:complexType>
      <xs:sequence>
        <xs:element xmlns:q5="http://schemas.datacontract.org/2004/07/Common" minOccurs="0" name="u" nillable="true" type="q5:UserProductRating" />
      </xs:sequence>
    </xs:complexType>
  </xs:element>
  <xs:element name="AddRatingResponse">
    <xs:complexType>
      <xs:sequence />
    </xs:complexType>
  </xs:element>
  <xs:element name="GetAllCategories">
    <xs:complexType>
      <xs:sequence />
    </xs:complexType>
  </xs:element>
  <xs:element name="GetAllCategoriesResponse">
    <xs:complexType>
      <xs:sequence>
        <xs:element xmlns:q6="http://schemas.datacontract.org/2004/07/Common" minOccurs="0" name="GetAllCategoriesResult" nillable="true" type="q6:ArrayOfCategory" />
      </xs:sequence>
    </xs:complexType>
  </xs:element>
  <xs:element name="AddToCart">
    <xs:complexType>
      <xs:sequence>
        <xs:element minOccurs="0" name="username" nillable="true" type="xs:string" />
        <xs:element minOccurs="0" name="productID" type="xs:int" />
        <xs:element minOccurs="0" name="quantity" type="xs:int" />
      </xs:sequence>
    </xs:complexType>
  </xs:element>
  <xs:element name="AddToCartResponse">
    <xs:complexType>
      <xs:sequence />
    </xs:complexType>
  </xs:element>
  <xs:element name="GetItemsInShoppingCart">
    <xs:complexType>
      <xs:sequence>
        <xs:element minOccurs="0" name="username" nillable="true" type="xs:string" />
      </xs:sequence>
    </xs:complexType>
  </xs:element>
  <xs:element name="GetItemsInShoppingCartResponse">
    <xs:complexType>
      <xs:sequence>
        <xs:element xmlns:q7="http://schemas.datacontract.org/2004/07/Common" minOccurs="0" name="GetItemsInShoppingCartResult" nillable="true" type="q7:ArrayOfCart" />
      </xs:sequence>
    </xs:complexType>
  </xs:element>
  <xs:element name="GetNoOfItemsInShoppingCart">
    <xs:complexType>
      <xs:sequence>
        <xs:element minOccurs="0" name="username" nillable="true" type="xs:string" />
      </xs:sequence>
    </xs:complexType>
  </xs:element>
  <xs:element name="GetNoOfItemsInShoppingCartResponse">
    <xs:complexType>
      <xs:sequence>
        <xs:element minOccurs="0" name="GetNoOfItemsInShoppingCartResult" type="xs:int" />
      </xs:sequence>
    </xs:complexType>
  </xs:element>
  <xs:element name="AddOrderDetails">
    <xs:complexType>
      <xs:sequence>
        <xs:element xmlns:q8="http://schemas.datacontract.org/2004/07/Common" minOccurs="0" name="od" nillable="true" type="q8:OrderDetail" />
      </xs:sequence>
    </xs:complexType>
  </xs:element>
  <xs:element name="AddOrderDetailsResponse">
    <xs:complexType>
      <xs:sequence />
    </xs:complexType>
  </xs:element>
  <xs:element name="RemoveProductFromCart">
    <xs:complexType>
      <xs:sequence>
        <xs:element minOccurs="0" name="Id" type="xs:int" />
      </xs:sequence>
    </xs:complexType>
  </xs:element>
  <xs:element name="RemoveProductFromCartResponse">
    <xs:complexType>
      <xs:sequence />
    </xs:complexType>
  </xs:element>
  <xs:element name="getComments">
    <xs:complexType>
      <xs:sequence>
        <xs:element minOccurs="0" name="ProductID" type="xs:int" />
      </xs:sequence>
    </xs:complexType>
  </xs:element>
  <xs:element name="getCommentsResponse">
    <xs:complexType>
      <xs:sequence>
        <xs:element xmlns:q9="http://schemas.datacontract.org/2004/07/Common" minOccurs="0" name="getCommentsResult" nillable="true" type="q9:ArrayOfComment" />
      </xs:sequence>
    </xs:complexType>
  </xs:element>
  <xs:element name="addComment">
    <xs:complexType>
      <xs:sequence>
        <xs:element xmlns:q10="http://schemas.datacontract.org/2004/07/Common" minOccurs="0" name="c" nillable="true" type="q10:Comment" />
      </xs:sequence>
    </xs:complexType>
  </xs:element>
  <xs:element name="addCommentResponse">
    <xs:complexType>
      <xs:sequence />
    </xs:complexType>
  </xs:element>
  <xs:element name="GetUserProductsDetails">
    <xs:complexType>
      <xs:sequence>
        <xs:element minOccurs="0" name="username" nillable="true" type="xs:string" />
        <xs:element minOccurs="0" name="id" type="xs:int" />
      </xs:sequence>
    </xs:complexType>
  </xs:element>
  <xs:element name="GetUserProductsDetailsResponse">
    <xs:complexType>
      <xs:sequence>
        <xs:element xmlns:q11="http://schemas.datacontract.org/2004/07/Common.VIews" minOccurs="0" name="GetUserProductsDetailsResult" nillable="true" type="q11:UserItem" />
      </xs:sequence>
    </xs:complexType>
  </xs:element>
  <xs:element name="GetUserProducts">
    <xs:complexType>
      <xs:sequence>
        <xs:element minOccurs="0" name="username" nillable="true" type="xs:string" />
      </xs:sequence>
    </xs:complexType>
  </xs:element>
  <xs:element name="GetUserProductsResponse">
    <xs:complexType>
      <xs:sequence>
        <xs:element xmlns:q12="http://schemas.datacontract.org/2004/07/Common.VIews" minOccurs="0" name="GetUserProductsResult" nillable="true" type="q12:ArrayOfUserItem" />
      </xs:sequence>
    </xs:complexType>
  </xs:element>
  <xs:element name="AddOrder">
    <xs:complexType>
      <xs:sequence>
        <xs:element xmlns:q13="http://schemas.datacontract.org/2004/07/Common" minOccurs="0" name="o" nillable="true" type="q13:Order" />
      </xs:sequence>
    </xs:complexType>
  </xs:element>
  <xs:element name="AddOrderResponse">
    <xs:complexType>
      <xs:sequence />
    </xs:complexType>
  </xs:element>
  <xs:element name="DeleteCart">
    <xs:complexType>
      <xs:sequence>
        <xs:element minOccurs="0" name="id" type="xs:int" />
      </xs:sequence>
    </xs:complexType>
  </xs:element>
  <xs:element name="DeleteCartResponse">
    <xs:complexType>
      <xs:sequence />
    </xs:complexType>
  </xs:element>
  <xs:element name="GetUserProductsForFaults">
    <xs:complexType>
      <xs:sequence>
        <xs:element minOccurs="0" name="username" nillable="true" type="xs:string" />
      </xs:sequence>
    </xs:complexType>
  </xs:element>
  <xs:element name="GetUserProductsForFaultsResponse">
    <xs:complexType>
      <xs:sequence>
        <xs:element xmlns:q14="http://schemas.datacontract.org/2004/07/Common.VIews" minOccurs="0" name="GetUserProductsForFaultsResult" nillable="true" type="q14:ArrayOfUserItem" />
      </xs:sequence>
    </xs:complexType>
  </xs:element>
  <xs:element name="GetAllUserProducts">
    <xs:complexType>
      <xs:sequence>
        <xs:element minOccurs="0" name="username" nillable="true" type="xs:string" />
      </xs:sequence>
    </xs:complexType>
  </xs:element>
  <xs:element name="GetAllUserProductsResponse">
    <xs:complexType>
      <xs:sequence>
        <xs:element xmlns:q15="http://schemas.datacontract.org/2004/07/Common" minOccurs="0" name="GetAllUserProductsResult" nillable="true" type="q15:ArrayOfProduct" />
      </xs:sequence>
    </xs:complexType>
  </xs:element>
  <xs:element name="GetProductDetailsByID">
    <xs:complexType>
      <xs:sequence>
        <xs:element minOccurs="0" name="id" type="xs:int" />
        <xs:element minOccurs="0" name="username" nillable="true" type="xs:string" />
      </xs:sequence>
    </xs:complexType>
  </xs:element>
  <xs:element name="GetProductDetailsByIDResponse">
    <xs:complexType>
      <xs:sequence>
        <xs:element xmlns:q16="http://schemas.datacontract.org/2004/07/Common.Views" minOccurs="0" name="GetProductDetailsByIDResult" nillable="true" type="q16:ProductDetails" />
      </xs:sequence>
    </xs:complexType>
  </xs:element>
  <xs:element name="GettAllOrdersDetails">
    <xs:complexType>
      <xs:sequence />
    </xs:complexType>
  </xs:element>
  <xs:element name="GettAllOrdersDetailsResponse">
    <xs:complexType>
      <xs:sequence>
        <xs:element xmlns:q17="http://schemas.datacontract.org/2004/07/Common" minOccurs="0" name="GettAllOrdersDetailsResult" nillable="true" type="q17:ArrayOfOrderDetail" />
      </xs:sequence>
    </xs:complexType>
  </xs:element>
  <xs:element name="getAllRatings">
    <xs:complexType>
      <xs:sequence />
    </xs:complexType>
  </xs:element>
  <xs:element name="getAllRatingsResponse">
    <xs:complexType>
      <xs:sequence>
        <xs:element xmlns:q18="http://schemas.datacontract.org/2004/07/Common" minOccurs="0" name="getAllRatingsResult" nillable="true" type="q18:ArrayOfUserProductRating" />
      </xs:sequence>
    </xs:complexType>
  </xs:element>
  <xs:element name="PDFOrder">
    <xs:complexType>
      <xs:sequence>
        <xs:element xmlns:q19="http://schemas.microsoft.com/2003/10/Serialization/" minOccurs="0" name="orderId" type="q19:guid" />
      </xs:sequence>
    </xs:complexType>
  </xs:element>
  <xs:element name="PDFOrderResponse">
    <xs:complexType>
      <xs:sequence>
        <xs:element minOccurs="0" name="PDFOrderResult" nillable="true" type="xs:string" />
      </xs:sequence>
    </xs:complexType>
  </xs:element>
  <xs:element name="GetOrderByID">
    <xs:complexType>
      <xs:sequence>
        <xs:element xmlns:q20="http://schemas.microsoft.com/2003/10/Serialization/" minOccurs="0" name="ID" type="q20:guid" />
      </xs:sequence>
    </xs:complexType>
  </xs:element>
  <xs:element name="GetOrderByIDResponse">
    <xs:complexType>
      <xs:sequence>
        <xs:element xmlns:q21="http://schemas.datacontract.org/2004/07/Common" minOccurs="0" name="GetOrderByIDResult" nillable="true" type="q21:Order" />
      </xs:sequence>
    </xs:complexType>
  </xs:element>
  <xs:element name="GetOrderDetailByID">
    <xs:complexType>
      <xs:sequence>
        <xs:element minOccurs="0" name="id" type="xs:int" />
      </xs:sequence>
    </xs:complexType>
  </xs:element>
  <xs:element name="GetOrderDetailByIDResponse">
    <xs:complexType>
      <xs:sequence>
        <xs:element xmlns:q22="http://schemas.datacontract.org/2004/07/Common" minOccurs="0" name="GetOrderDetailByIDResult" nillable="true" type="q22:OrderDetail" />
      </xs:sequence>
    </xs:complexType>
  </xs:element>
  <xs:element name="GetOrderDetailByOrderID">
    <xs:complexType>
      <xs:sequence>
        <xs:element xmlns:q23="http://schemas.microsoft.com/2003/10/Serialization/" minOccurs="0" name="id" type="q23:guid" />
      </xs:sequence>
    </xs:complexType>
  </xs:element>
  <xs:element name="GetOrderDetailByOrderIDResponse">
    <xs:complexType>
      <xs:sequence>
        <xs:element xmlns:q24="http://schemas.datacontract.org/2004/07/Common" minOccurs="0" name="GetOrderDetailByOrderIDResult" nillable="true" type="q24:ArrayOfOrderDetail" />
      </xs:sequence>
    </xs:complexType>
  </xs:element>
  <xs:element name="UpdateOrderDetail">
    <xs:complexType>
      <xs:sequence>
        <xs:element xmlns:q25="http://schemas.datacontract.org/2004/07/Common" minOccurs="0" name="od" nillable="true" type="q25:OrderDetail" />
      </xs:sequence>
    </xs:complexType>
  </xs:element>
  <xs:element name="UpdateOrderDetailResponse">
    <xs:complexType>
      <xs:sequence />
    </xs:complexType>
  </xs:element>
  <xs:element name="GetAllOrderByUserName">
    <xs:complexType>
      <xs:sequence>
        <xs:element minOccurs="0" name="username" nillable="true" type="xs:string" />
      </xs:sequence>
    </xs:complexType>
  </xs:element>
  <xs:element name="GetAllOrderByUserNameResponse">
    <xs:complexType>
      <xs:sequence>
        <xs:element xmlns:q26="http://schemas.datacontract.org/2004/07/Common" minOccurs="0" name="GetAllOrderByUserNameResult" nillable="true" type="q26:ArrayOfOrder" />
      </xs:sequence>
    </xs:complexType>
  </xs:element>
  <xs:element name="ProduceReport">
    <xs:complexType>
      <xs:sequence>
        <xs:element xmlns:q27="http://schemas.datacontract.org/2004/07/Common.Views" minOccurs="0" name="list" nillable="true" type="q27:ArrayOfProductReport" />
        <xs:element minOccurs="0" name="opt" nillable="true" type="xs:string" />
      </xs:sequence>
    </xs:complexType>
  </xs:element>
  <xs:element name="ProduceReportResponse">
    <xs:complexType>
      <xs:sequence />
    </xs:complexType>
  </xs:element>
</xs:schema>